#include<stdio.h>
#include<string.h>
int main()
{
    char a[101],s[101];
    int i,len,mid,next,top;
    
    gets(a);  //字符串的读入
    len=strlen(a);  //求字符串的长度
    mid=len/2-1;  //求字符串的中点
    
    top=0; //栈的初始化
    for(i=0;i<=mid;i++) //将mid之前的字符依次入栈
    {
        s[++top]=a[i];
    }
    
    //判断字符串的长度是奇数还是偶数，并找出需要进行字符匹配的起始下标
    if(len%2==0)
    {
        next=mid+1;
    }
    else
    {
        next=mid+2;
    }
    //匹配开始
    for(i=next;i<=len-1;i++)
    {
        if(a[i] != s[top])
        {
            break;
        }
          top--;
    }
    
    //如果top的值为0，说明栈内的所有的字符都被一一匹配了
    if(top==0)
    printf("yes!\n");
    else
    printf("no!\n");
    
    return 0;
}